<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IBustProxy</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.77.1">
<link rel="home" href="index.html" title="IBust Reference Manual">
<link rel="up" href="ch05.html" title="Communication">
<link rel="prev" href="IBustBus.html" title="IBustBus">
<link rel="next" href="IBustSerializable.html" title="IBustSerializable">
<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
<tr valign="middle">
<td><a accesskey="p" href="IBustBus.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="ch05.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
<th width="100%" align="center">IBust Reference Manual</th>
<td><a accesskey="n" href="IBustSerializable.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts">
<a href="#IBustProxy.synopsis" class="shortcut">Top</a>
                   | 
                  <a href="#IBustProxy.description" class="shortcut">Description</a>
                   | 
                  <a href="#IBustProxy.object-hierarchy" class="shortcut">Object Hierarchy</a>
                   | 
                  <a href="#IBustProxy.implemented-interfaces" class="shortcut">Implemented Interfaces</a>
                   | 
                  <a href="#IBustProxy.signals" class="shortcut">Signals</a>
</td></tr>
</table>
<div class="refentry">
<a name="IBustProxy"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="IBustProxy.top_of_page"></a>IBustProxy</span></h2>
<p>IBustProxy — Base proxy object.</p>
</td>
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
<a name="IBustProxy.stability-level"></a><h2>Stability Level</h2>
Stable, unless otherwise indicated
</div>
<div class="refsynopsisdiv">
<a name="IBustProxy.synopsis"></a><h2>Synopsis</h2>
<pre class="synopsis">#define             <a class="link" href="IBustProxy.html#IBUST-PROXY-DESTROYED:CAPS" title="IBUST_PROXY_DESTROYED()">IBUST_PROXY_DESTROYED</a>                (obj)
#define             <a class="link" href="IBustProxy.html#IBUST-PROXY-FLAGS:CAPS" title="IBUST_PROXY_FLAGS()">IBUST_PROXY_FLAGS</a>                    (obj)
#define             <a class="link" href="IBustProxy.html#IBUST-PROXY-SET-FLAGS:CAPS" title="IBUST_PROXY_SET_FLAGS()">IBUST_PROXY_SET_FLAGS</a>                (obj,
                                                         flag)
#define             <a class="link" href="IBustProxy.html#IBUST-PROXY-UNSET-FLAGS:CAPS" title="IBUST_PROXY_UNSET_FLAGS()">IBUST_PROXY_UNSET_FLAGS</a>              (obj,
                                                         flag)
struct              <a class="link" href="IBustProxy.html#IBustProxy-struct" title="struct IBustProxy">IBustProxy</a>;
struct              <a class="link" href="IBustProxy.html#IBustProxyClass" title="struct IBustProxyClass">IBustProxyClass</a>;
<span class="returnvalue">void</span>                <a class="link" href="IBustProxy.html#ibust-proxy-destroy" title="ibust_proxy_destroy ()">ibust_proxy_destroy</a>                  (<em class="parameter"><code><a class="link" href="IBustProxy.html" title="IBustProxy"><span class="type">IBustProxy</span></a> *proxy</code></em>);
</pre>
</div>
<div class="refsect1">
<a name="IBustProxy.object-hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="synopsis">
  GObject
   +----GDBusProxy
         +----IBustProxy
               +----<a class="link" href="IBustConfig.html" title="IBustConfig">IBustConfig</a>
               +----<a class="link" href="IBustInputContext.html" title="IBustInputContext">IBustInputContext</a>
</pre>
</div>
<div class="refsect1">
<a name="IBustProxy.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
<p>
IBustProxy implements
 GDBusInterface,  GInitable and  GAsyncInitable.</p>
</div>
<div class="refsect1">
<a name="IBustProxy.signals"></a><h2>Signals</h2>
<pre class="synopsis">
  "<a class="link" href="IBustProxy.html#IBustProxy-destroy" title='The "destroy" signal'>destroy</a>"                                        : <code class="literal">Run Last</code>
</pre>
</div>
<div class="refsect1">
<a name="IBustProxy.description"></a><h2>Description</h2>
<p>
An IBustProxy is the base of all proxy objects,
which communicate the corresponding <a href="IBustService.html"><span class="type">IBustServices</span></a> on the other end of IBustConnection.
For example, IBust clients (such as editors, web browsers) invoke the proxy object,
IBustInputContext to communicate with the InputContext service of the ibust-daemon.
</p>
<p>
Almost all services have corresponding proxies, except very simple services.
</p>
</div>
<div class="refsect1">
<a name="IBustProxy.details"></a><h2>Details</h2>
<div class="refsect2">
<a name="IBUST-PROXY-DESTROYED:CAPS"></a><h3>IBUST_PROXY_DESTROYED()</h3>
<pre class="programlisting">#define IBUST_PROXY_DESTROYED(obj)         (IBUST_PROXY_FLAGS (obj) &amp; IBUST_DESTROYED)
</pre>
<p>
</p>
</div>
<hr>
<div class="refsect2">
<a name="IBUST-PROXY-FLAGS:CAPS"></a><h3>IBUST_PROXY_FLAGS()</h3>
<pre class="programlisting">#define IBUST_PROXY_FLAGS(obj)             (IBUST_PROXY (obj)-&gt;flags)
</pre>
<p>
</p>
</div>
<hr>
<div class="refsect2">
<a name="IBUST-PROXY-SET-FLAGS:CAPS"></a><h3>IBUST_PROXY_SET_FLAGS()</h3>
<pre class="programlisting">#define IBUST_PROXY_SET_FLAGS(obj,flag)    G_STMT_START{ (IBUST_PROXY_FLAGS (obj) |= (flag)); }G_STMT_END
</pre>
<p>
</p>
</div>
<hr>
<div class="refsect2">
<a name="IBUST-PROXY-UNSET-FLAGS:CAPS"></a><h3>IBUST_PROXY_UNSET_FLAGS()</h3>
<pre class="programlisting">#define IBUST_PROXY_UNSET_FLAGS(obj,flag)  G_STMT_START{ (IBUST_PROXY_FLAGS (obj) &amp;= ~(flag)); }G_STMT_END
</pre>
<p>
</p>
</div>
<hr>
<div class="refsect2">
<a name="IBustProxy-struct"></a><h3>struct IBustProxy</h3>
<pre class="programlisting">struct IBustProxy;</pre>
<p>
An opaque data type representing an IBustProxy.
</p>
</div>
<hr>
<div class="refsect2">
<a name="IBustProxyClass"></a><h3>struct IBustProxyClass</h3>
<pre class="programlisting">struct IBustProxyClass {
    GDBusProxyClass parent;

    /* class members */
    void    (* destroy)     (IBustProxy      *proxy);
};
</pre>
<p>
</p>
</div>
<hr>
<div class="refsect2">
<a name="ibust-proxy-destroy"></a><h3>ibust_proxy_destroy ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                ibust_proxy_destroy                  (<em class="parameter"><code><a class="link" href="IBustProxy.html" title="IBustProxy"><span class="type">IBustProxy</span></a> *proxy</code></em>);</pre>
<p>
Dispose the proxy object. If the dbus connection is alive and the own variable above
is TRUE (which is the default), org.freedesktop.IBust.Service.Destroy method will be
called. Note that "destroy" signal might be emitted when ibust_proxy_destroy is called
or the underlying dbus connection for the proxy is terminated. In the callback of the
destroy signal, you might have to call something like 'g_object_unref(the_proxy);'.
</p>
</div>
</div>
<div class="refsect1">
<a name="IBustProxy.signal-details"></a><h2>Signal Details</h2>
<div class="refsect2">
<a name="IBustProxy-destroy"></a><h3>The <code class="literal">"destroy"</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="IBustProxy.html" title="IBustProxy"><span class="type">IBustProxy</span></a> *object,
                                                        <span class="type">gpointer</span>   user_data)      : <code class="literal">Run Last</code></pre>
<p>
Destroy and free an IBustProxy
</p>
<p>
See also:  <a class="link" href="IBustProxy.html#ibust-proxy-destroy" title="ibust_proxy_destroy ()"><code class="function">ibust_proxy_destroy()</code></a>.
</p>
<p>
</p>
<div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
<h3 class="title">Note</h3>
<p>Argument <em class="parameter"><code>user_data</code></em> is ignored in this function.</p>
</div>
<p>
</p>
<div class="variablelist"><table border="0" class="variablelist">
<colgroup>
<col align="left" valign="top">
<col>
</colgroup>
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
<td>An IBustProxy.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>user data set when the signal handler was connected.</td>
</tr>
</tbody>
</table></div>
</div>
</div>
</div>
<div class="footer">
<hr>
          Generated by GTK-Doc V1.18</div>
</body>
</html>